package com.atguigu.lease.common.context;

public class LoginUserContext {

    private static ThreadLocal<LoginUser> loginUserThreadLocal = new ThreadLocal<>();

    public static LoginUser getLoginUser(){
        return loginUserThreadLocal.get();
    }

    public static void setLoginUser(LoginUser loginUser){
        loginUserThreadLocal.set(loginUser);
    }

    public static void clear(){
        loginUserThreadLocal.remove();
    }
}
/*
ThreadLocal: 硬翻译，意思是：本地线程。

两个组件之间的数据的传递正常情况，我们可以通过参数传递或者返回值传递
除此之外，两个组件之间如果不存在调用关系，我们可以通过ThreadLocal传递数据。前提条件是这两个组件在同一个线程上被执行。

ThreadLocal中有两个主要的方法：get() , set(obj)




 */